/**
 * 解析url参数
 * @example  ?id=1&table=pro
 * @return Object {id:1,table:pro}
 * */
export function urlParse(path) {
  const url = path || window.location.search// 得到url问号后面拼接的参数  ?id=12345&a=b
  const obj = {}// 创建一个Object
  const reg = /[?&][^?&]+=[^?&]+/g// 正则匹配 ?&开始 =拼接  非?&结束  的参数
  const arr = url.match(reg)// match() 方法可在字符串内检索指定的值，或找到一个或多个正则表达式的匹配。
  // arr数组形式 ['?id=12345','&a=b']
  if (arr) {
    arr.forEach((item) => {
      /**
       * tempArr数组    ['id','12345']和['a','b']
       * 第一个是key，第二个是value
       * */
      const tempArr = item.substring(1).split('=')
      const key = decodeURIComponent(tempArr[0])
      const val = decodeURIComponent(tempArr[1])
      obj[key] = val
    })
  }
  return obj
}


export function delUrl(url, names) {
  url = url || window.location.href
  var param = {}
  var arr1 = url.split('?')
  if (arr1.length == 1) return arr1[0]
  var arr2 = arr1[1].split('&')
  var str = arr1[0] + '?'
  for (var i = 0; i < arr2.length; i++) {
    var res = arr2[i].split('=')
    if (names.indexOf(res[0]) > -1) {
    } else {
      if (!res[0] || !res[1]) {
        continue
      }
      param[res[0] || ''] = res[1] || ''
      str = str + (i == 0 ? '' : '&') + res[0] + '=' + res[1]
    }
  }
  if (str.endsWith('?')) {
    str = str.replace('?', '')
  }
  return str
}
